package com.os.pojo.virtualmemory;


/**
 * 页与段的上级接口
 */
public interface MemoryBlock {

    /**
     * 获取页或段的id
     */
    int getId();

    /**
     * 获取大小
     */
    int getSize();

    /**
     * 获取页或段的上级id,
     * 页的上级是段，段的上级是PCB
     */
    int getParId();

    /**
     * FIFO：记录进入队列经过的时间
     */
    int getFIFOTime();

    void setFIFOTime(int time);


    /**
     * LRU：用来记录一个块自上次被访问以来所经历的时间
     */
    int getLRUTime();

    void setLRUTime(int time);

    /**
     * CLOCK：获取clock算法需要的位
     */
    boolean getCLOCKBit();

    void setCLOCKBit(boolean bit);

    boolean isUsed();

}
